using System;
using Ease.EaseNode.Runtime;
using UnityEngine;

namespace Ease.EaseNode.Editor.NodeView
{
    public interface IEaseChartView
    {
        public event Action<BaseEaseNode> OnNodeSelected;
        public event Func<Vector2, Vector2> OnGetWindowMousePosition;
        public event Action<Action<IEaseNodeDataState>> OnCreateAllNodes;
        public event Func<Type, IEaseNodeDataState, BaseEaseNode> OnCreateNode;
        public void Reset(InitParam initParam = null);
        public void OnEnable();
        public void OnDisable();
        public void OnUpdate();
    }
}